package com.tinyspeck.bootstrap {
	import com.tinyspeck.bootstrap.control.BootStrapController;
	import com.tinyspeck.core.beacon.StageBeacon;
	import com.tinyspeck.debug.NewxpLogger;
	import com.tinyspeck.engine.data.client.LocalStorage;
	import com.tinyspeck.engine.port.AssetManager;
	import com.tinyspeck.engine.sound.SoundManager;
	import com.tinyspeck.engine.view.util.StaticFilters;
	
	import flash.display.Bitmap;
	import flash.display.DisplayObject;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.external.ExternalInterface;
	import flash.text.TextField;
	
	import org.osflash.signals.Signal;
	
	public class LateralLoader extends Sprite {
		
		private const H:int = 280;
		private const loadingbar_width:int = 464;
		private const auto_advance_secs_allowed:int = 10;
		
		private const music_off_str:String = 'iVBORw0KGgoAAAANSUhEUgAAACIAAAAyCAYAAAA5kQlZAAAD+ElEQVR42u2Ye0hTURzHK+hlL4soe1Cj+qcokB4EYWR/BBIVPYyitK2SyizTmnO6bOoym6aWLiyXNrKylxkbgRWVNigKLMRB0SJnK7Q0NB+Urbz9vnAuHGTQNssbscGX87jn8Tmv7z13AwRB+CfkB/GD/HWQwRGH9KR2kiAZSEbFvYChkcoeQEgKkm15oASApCDUsWa4POF7f4KgU3ToWptT7KLlQLwgQK7qRuf9DSKIIhhhhEIFGEFyEIR+ED+IH8QbkMCdSdKBDNuWIKzPLRHI0ISthlLXmB3qfgeB8PsBsfjFWNNN16jtif0M4l75D2x2l+QgkL2p2YAlkxyktuHDvKiiKz30FpYW5HzV08md37pNP3t6XJSWDqSprX0EhUNJg6S+sw78m5dn+EZwr7SMFOjlDW6tN3XcNRDHToGCg8BlyOINyLio5NdTY1I3+wwybV+aDR3POKB7jPT0/ekp/PHEKDFaDpwH1orpgjvWu0/sjjCujgJC3COQoD0pX+Yoj3ewzgMn7kmp59KysVHJGRxUKOIAo8+KL5OijzTQXbaTAQmsrGxIpLKNXglNEPI8XRrhYOmtJwgn7D68m0+HpOavX6k/WyGCyAsvRyG+LL0gH+HGk6a66pdvqumZHGmUpYEU0RJ1Nba1l1N+GZ79FkQcYVp5pXZxSl4rRsA6DUc4T5VV6A4E5U3Vz+qm7NU6xf0lglCd2vlJJz5S+ZEe75HlOsMRNHDf9nrpflN5FeIrjhU24xmWZ0FyjpWc1CguB8AQX5N9Lp721iPsC5TD/hJB1GUWMysfxxT6WxDqJA0Ngd5SY4um9XTpzfev4RmmPSzzjJXiYXQdaGQnqSv1RqWdZiN8oSbnFfJmxh1tMdfYitBOwiXzKZSPv1BRT219ggDtyR4JIRlZPIhkQR5Lx0Asnkh6yJ6Hs7I65LH6sxBydeWkMqaQf/tvib47o3tnJlWQ4lg7D0mhPoHwzuitxu/S3KWj30q3uCy6InTMVemdtF82eQ3ixhkVzKRkbkYvYyMPFmcDEHSUOxdpcouxgQGy8+yV1T6BcM6ohVvCNZHnZvkEuC9CUh6dHhX5Tzcki01/iXy4NfJ9BoEPzFZm1sAZMUOf2jusvZeP+YwRxxh1Xjjeb6CZaIEoPw950cXX63CM+wTibGnNXpVlfIu1pvdJLb+BMeothtJqxOGuqBOszl6CpYD4dhDvE8joHWoDmdk9zdXbNrEjsQx9bL2jWWnGEtFH1yty16/wkD8KIjpjxOmLN9AZ9sn2M2VOdCSWcTR/ThVni16IDno1VCJ/XW7Jc4hvx2cQzhnDmSNaRGflNBIuy57pOMgYiG/H/8+zH+S/AfkF2XdKHmlajpoAAAAASUVORK5CYII=';
		private const music_on_str:String = 'iVBORw0KGgoAAAANSUhEUgAAACIAAAAyCAYAAAA5kQlZAAAE7klEQVR42u2YDUxVZRzGi6Wm9oHl1L5Z0VotG9NWm9OyDx1zZeZum5V2r0YJIYR0+ZDPCwgEBCr3MhQU7sDEjA/jxjIJEGi5JGzEZZS4lBiDuBZfotgtTs+znXc7O4svL5dbDbZn5/++5/++53fO+57n/C83SJL0r9AMyAyI00Fmbf4gBRqAJJeBJJZVzpuzRT9CCGoU0BegWU4FSbNU6wkwFshDQbur5mpDEp0GggtH4gJ/jAaCthuPF22/ld7hEzGI9nJHQTgpL2jfkH7IjuVgbJynDb2mhFCDYMky0bcG8aLC+obe27eFn0d7tqMgkhBgpPm6UMJIY4F8fralaLFvdCv6F6C96Ymw1KsL341cO6UgIlZLztVDixEv888r7rzX3xDAfm32EdszccYD0wYSV3LC/EBAfBTjlPKq0lWGzK8Yx3z6RfWTkelN0wZyvKHZ9/ndWXWMC+oaArEkHYzzT31ruH9H3OC0geiyj6x701TYIC/H697J+3sYv2Eq9HsqKuPqtIHgCRjTK2qOMV6blJ28I7+khTH2xyFAdk0bSOmZJtOw3b4e7ZseCU76Ievk12b2L49ItxqKT1ROKYj727tGBYG8IDeYXbBmb/4viF/kK3znO5HDn33XHOowyM1vhUgbM/IkGJqEPWCHQY3lI3x7Drbbfi9gfNu28KOB5tIriB921OL59yclx4cxsf3WrWGjgVCvQAvR/zLelv7eoStGZ330MqutbfbxPnoegfENNS1tXKK5TgGh2rptJizZWCBUBbTCqWVAU3vnUp+coyPYmJIrCyO65d2Xh6+Z/xoZsaPtOpDuvoH5OM6B3Fxds97ozOKZvuGlantA7pOs4DZMZsw/TRAESZBOAcFiyDIZEJSH51CLbLpuEJiPlRd+8P2Eb9hGbRGtKnzcebciXwUcK9rGL+tPnm676K0Yo6MYTwhkiW90/2P6Dwfli7uj3LugaHss8IlIVECtZkww1Kj9d/nFtKOWvSwDSXKux+wt+j58Erop9k10aaTgwuOneVy0PWq7sr3SkLlxXcqBMsZyveHD+Nl4YyaPr+01N9e2nq/FOS3bzMWN5GCJhrr6BkrQX8Rz44KIO8QHK/bp6D29vAP5ohoel4amZqtBRL659kzzPe/Fdoj9JUAwpmnZro9+Rf4tE94jzyWYYjhBlfXcqgBzySnGa5KybTzH5UFNUQ8nzRXLQTDG69MO7sTequO+YB73lwAJL7KUy/lBslaPC4KLxHEi0lsarX5YTzsK4GM8x8eOsq8esTfKgS75TRpCsdOGp6FBYfwj+/DL7lJ5ozWH84R8XL6P+TsLyi5grh6K0BPZIyuhXDleAlnYJ7f9KTkOg2rk8xo5N4F98nhPHhVjtVARxb7/5r8lhDO6HEQ4o6tB1M6ok03KQ50nXFPttpCXcFqHQBTOGEu3pGuqix+la6I4ovt+L8bSaVEmtopX1yEQ+sCj+uRGOiOfUM/AYL0yR+madFThLzzCh35Czh4aI79fDoN0XOpNeyk192feMe6ySbmBVa7pKexejGXO46EpHZTDIPhNYoKZVUZ+UmFln1d42gqRo3BNHZTPmEY4pSDCGTdnHS7GG2TjPtm6v4gTeooc4ZrcI/f5Gzr5vaG5ibHMeTUj7yx13SAKZ9TIjmgRziqkdE2RL8aqHXnmP88zIP8bkL8Bx6QdRZyP/jcAAAAASUVORK5CYII=';

		private const button_enabled_str:String = 'iVBORw0KGgoAAAANSUhEUgAAAKIAAAAwCAYAAACSXKFTAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMzgwMTE3NDA3MjA2ODExQUE5N0NBMzg5MTc4RjBEMyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MTI3MzE5NDIyMjAxMUUyOUJFQ0E0NzE1MDhEMkVGMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MTI3MzE5MzIyMjAxMUUyOUJFQ0E0NzE1MDhEMkVGMyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MENBNDQyNkIxOTIwNjgxMTkyM0ZGRTczNDJFODQ5MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDM4MDExNzQwNzIwNjgxMUFBOTdDQTM4OTE3OEYwRDMiLz4gPC9yZGY6RGVzY3Jp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';
		private const button_disabled_str:String = 'iVBORw0KGgoAAAANSUhEUgAAAKIAAAAwCAYAAACSXKFTAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMzgwMTE3NDA3MjA2ODExQUE5N0NBMzg5MTc4RjBEMyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MTI3MzE5MDIyMjAxMUUyOUJFQ0E0NzE1MDhEMkVGMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MTI3MzE4RjIyMjAxMUUyOUJFQ0E0NzE1MDhEMkVGMyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MENBNDQyNkIxOTIwNjgxMTkyM0ZGRTczNDJFODQ5MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDM4MDExNzQwNzIwNjgxMUFBOTdDQTM4OTE3OEYwRDMiLz4gPC9yZGY6RGVzY3Jp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';
		private const button_hover_str:String = 'iVBORw0KGgoAAAANSUhEUgAAAKIAAAAwCAYAAACSXKFTAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMzgwMTE3NDA3MjA2ODExQUE5N0NBMzg5MTc4RjBEMyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFNzBFMjU1QzIyQzIxMUUyQTE2QkY2Q0U1NjBFRURGOSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFNzBFMjU1QjIyQzIxMUUyQTE2QkY2Q0U1NjBFRURGOSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEVBNDQyNkIxOTIwNjgxMTkyM0ZGRTczNDJFODQ5MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDM4MDExNzQwNzIwNjgxMUFBOTdDQTM4OTE3OEYwRDMiLz4gPC9yZGY6RGVzY3Jp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';
		private const sound_holder:Sprite = new Sprite();
		private const ready_holder:Sprite = new Sprite();
		
		private var loading_status_sp:Sprite;
		private var music_on_bm:Bitmap;
		private var music_off_bm:Bitmap;
		private var button_enabled_bm:Bitmap;
		private var button_disabled_bm:Bitmap;
		private var button_hover_bm:Bitmap;
		private var logo:DisplayObject;
		private var music_on:Boolean = true;
		
		private var progress_tf:TextField;
		private var auto_advance_interv:int;
		private var auto_advance_secs:int = auto_advance_secs_allowed;
		private var loadingbar:DisplayObject;
		
		public const start_clicked_sig:Signal = new Signal();
			
		public function LateralLoader(logo:DisplayObject, loading_status_sp:Sprite) {
			this.logo = logo;
			this.loading_status_sp = loading_status_sp;
			progress_tf = loading_status_sp.getChildAt(0) as TextField;
			progress_tf.visible = false;
			build();
		}
		
		public function addLoadingbar(DO:DisplayObject):void{
			addChildAt(DO, 1);
			loadingbar = DO;
			progress_tf.visible = true;
			progress_tf.cacheAsBitmap = true;
			progress_tf.filters = StaticFilters.copyFilterArrayFromObject({distance:1, alpha:.8}, StaticFilters.black1px270Degrees_DropShadowA);
			resize();
		}
		
		public function resize():void {
			sound_holder.x = Math.round(StageBeacon.stage.stageWidth/2)-(sound_holder.width+4);
			ready_holder.x = -Math.round(ready_holder.width/2);
			ready_holder.y = 229;
			
			if (loadingbar) {
				loadingbar.y = 72;
				loadingbar.x = -Math.round(loadingbar_width/2);
			}
		}
		
		public function turnMusicOff():void {
			if (music_on) {
				onMusicClick();
			}
		}
		
		public function jiggerProgress(step_perc:Number=NaN):void {
			loading_status_sp.x = Math.round(-loading_status_sp.width/2);
			loading_status_sp.y = 196;
		}
		
		public function set progress(perc:Number):void {
			
		}
		
		public function showStartButton():void {
			button_disabled_bm.visible = false;
			button_enabled_bm.visible = true;
			
			ready_holder.useHandCursor = ready_holder.buttonMode = true;
			ready_holder.addEventListener(MouseEvent.CLICK, onStartClick);
			ready_holder.addEventListener(MouseEvent.ROLL_OVER, onStartRollOver);
			ready_holder.addEventListener(MouseEvent.ROLL_OUT, onStartRollOut);
			
			NewxpLogger.log('initial_load_done');
			
			// only report loading times for non admin builds
			if (com.tinyspeck.bootstrap.Version.revision != 'incremental' && !CONFIG::god && !CONFIG::locodeco) {
				ExternalInterface.call('TS.client.AS_interface.incoming_JS', {
					meth: 'initial_load_done',
					params: null
				});
			}
			
			return;
			autoAdvanceStep();
			auto_advance_interv = StageBeacon.setInterval(autoAdvanceStep, 1000);
		}
		
		private function build():void {
			
			addChild(logo);
			logo.x = Math.round(-logo.width/2);
			
			addChild(ready_holder);
			
			AssetManager.instance.loadBitmapFromBASE64('music_on_bm', music_on_str, function(key:String, bm:Bitmap):void {
				music_on_bm = bm;
				sound_holder.addChild(music_on_bm);
				checkMusicStatus();
				resize()
			});
			
			AssetManager.instance.loadBitmapFromBASE64('music_off_bm', music_off_str, function(key:String, bm:Bitmap):void {
				music_off_bm = bm;
				music_off_bm.visible = false;
				sound_holder.addChild(music_off_bm);
				checkMusicStatus();
				resize();
			});
			
			addChild(sound_holder);
			sound_holder.useHandCursor = sound_holder.buttonMode = true;
			sound_holder.addEventListener(MouseEvent.CLICK, onMusicClick);
			
			
			AssetManager.instance.loadBitmapFromBASE64('newbie_button_disabled_str', button_disabled_str, function(key:String, bm:Bitmap):void {
				ready_holder.addChild(bm);
				button_disabled_bm = bm;
				button_disabled_bm.visible = true;
				resize();
			});
			
			AssetManager.instance.loadBitmapFromBASE64('newbie_button_enabled_str', button_enabled_str, function(key:String, bm:Bitmap):void {
				ready_holder.addChild(bm);
				button_enabled_bm = bm;
				button_enabled_bm.visible = false;
				resize();
			});
			
			AssetManager.instance.loadBitmapFromBASE64('newbie_button_hover_str', button_hover_str, function(key:String, bm:Bitmap):void {
				ready_holder.addChild(bm);
				button_hover_bm = bm;
				button_hover_bm.visible = false;
				resize()
			});
			
			addChild(loading_status_sp);
			jiggerProgress();
			
		}
		
		private function checkMusicStatus():void {
			if (!music_off_bm) return;
			if (!music_on_bm) return;
			if (!SoundManager.instance.music_volume) {
				turnMusicOff();
			}
		}
		
		private function onMusicClick(e:MouseEvent=null):void {
			if (music_on) {
				music_on = false;
				LocalStorage.instance.setUserData(LocalStorage.MUSIC_VOLUME, 0);
				if(SoundManager.instance.getSoundObject('OPENING_SCREEN_MUSIC')){
					SoundManager.instance.stopSound('OPENING_SCREEN_MUSIC', BootStrapController.AUDIO_FADE_TIME);
				}
			} else {
				music_on = true;
				LocalStorage.instance.setUserData(LocalStorage.MUSIC_VOLUME, SoundManager.DEFAULT_MUSIC_VOLUME);
				if(SoundManager.instance.getSoundObject('OPENING_SCREEN_MUSIC')){
					SoundManager.instance.playSound('OPENING_SCREEN_MUSIC', SoundManager.instance.music_volume);
				}
			}
			
			music_off_bm.visible = !music_on;
			music_on_bm.visible = music_on;
		}
		
		private function autoAdvanceStep():void {
			progress_tf.htmlText = '<span class="progress">complete! auto advancing in '+auto_advance_secs+'...</span>';
			jiggerProgress();
			auto_advance_secs--;
			if (auto_advance_secs < 0) {
				advance();
			}
		}
		
		private function onStartClick(e:MouseEvent):void {
			advance();
		}
		
		private function onStartRollOut(e:MouseEvent):void {
			button_enabled_bm.visible = true;
			button_hover_bm.visible = false;
		}
		
		private function onStartRollOver(e:MouseEvent):void {
			button_enabled_bm.visible = false;
			button_hover_bm.visible = true;
		}
		
		private function advance():void {
			StageBeacon.clearInterval(auto_advance_interv);
			start_clicked_sig.dispatch();
			this.removeEventListener(MouseEvent.CLICK, onStartClick);
			this.mouseChildren = false;
			this.mouseEnabled = false;
			this.visible = false;
			
			NewxpLogger.log('initial_load_client_clicked');
			ExternalInterface.call('TS.client.AS_interface.incoming_JS', {
				meth: 'initial_load_client_clicked',
				params: {
					report: (com.tinyspeck.bootstrap.Version.revision != 'incremental' && !CONFIG::god && !CONFIG::locodeco) ? 1 : 0
				}
			});
		}
		
	}
}